package com.dingpeikeji.quickdeer.core.modules.site.entity;

import org.hibernate.validator.constraints.Length;

import com.dingpeikeji.quickdeer.core.common.persistence.DataEntity;
import com.dingpeikeji.quickdeer.core.modules.line.entity.TLine;
import com.dingpeikeji.quickdeer.core.modules.sys.entity.Area;
import com.fasterxml.jackson.annotation.JsonIgnore;

/**
 * 站点Entity
 * 
 * @author lh
 * @version 2016-05-19
 */
public class TSitedtl extends DataEntity<TSitedtl> {

	private static final long serialVersionUID = 1L;

	// spottype的取值
	public static final String SPOTTYPE_CITY = "0"; // 城市
	public static final String SPOTTYPE_SITE = "1"; // 上下客点
	public static final String SPOTTYPE_SPOT = "2"; // 景点
	public static final String SPOTTYPE_BUY = "3"; // 购物点
	public static final String SPOTTYPE_HOTEL = "4"; // 酒店
	public static final String SPOTTYPE_RESTAURANT = "5"; // 餐厅
	public static final String SPOTTYPE_FUN = "6"; // 文化娱乐点
	public static final String SPOTTYPE_CITY_POINT = "7"; // 城市枢纽
	public static final String SPOTTYPE_TRAIN = "8"; // 火车站
	public static final String SPOTTYPE_AIRPOT = "9"; // 机场
	public static final String SPOTTYPE_STOP = "a"; //接送客点 
	public static final String SPOTTYPE_SUBURBS = "b"; //郊区 
	
	// ishot的取值
	public static final String COMMON_SPOT = "0"; // 普通地点
	public static final String HOT_SPOT = "1"; // 热门地点

	private String siteid; // siteid
	private String sitename; // sitename
	private Area area; // area_id; //地区主键
	private String citycode; // citycode
	private String cityname; // cityname
	private String spottype; // spottype
	private String querycode; // querycode
	private String ishot; // 是否是热门
	@JsonIgnore
	private String firstletter; // 首字母

	// 拓展字段
	private String[] spottypes; // 类型集合
	private TLine tLine;		// 根据线路查询经停城市

	public TSitedtl() {
		super();
	}

	public String getFirstletter() {
		return firstletter;
	}

	public void setFirstletter(String firstletter) {
		this.firstletter = firstletter;
	}

	public TSitedtl(String id) {
		super(id);
	}
	
	public TSitedtl(TLine tline) {
		this();
		this.tLine = tline;
	}

	public String getSiteid() {
		return siteid;
	}

	public void setSiteid(String siteid) {
		this.siteid = siteid;
	}

	@Length(min = 0, max = 100, message = "sitename长度必须介于 0 和 100 之间")
	public String getSitename() {
		return sitename;
	}

	public void setSitename(String sitename) {
		this.sitename = sitename;
	}

	@Length(min = 0, max = 10, message = "citycode长度必须介于 0 和 10 之间")
	public String getCitycode() {
		return citycode;
	}

	public void setCitycode(String citycode) {
		this.citycode = citycode;
	}

	public String getCityname() {
		return cityname;
	}

	public void setCityname(String cityname) {
		this.cityname = cityname;
	}

	public String getSpottype() {
		return spottype;
	}

	public void setSpottype(String spottype) {
		this.spottype = spottype;
	}

	public String getQuerycode() {
		return querycode;
	}

	public void setQuerycode(String querycode) {
		this.querycode = querycode;
	}

	public Area getArea() {
		return area;
	}

	public void setArea(Area area) {
		this.area = area;
	}

	public String[] getSpottypes() {
		return spottypes;
	}

	public void setSpottypes(String[] spottypes) {
		this.spottypes = spottypes;
	}

	public String getIshot() {
		return ishot;
	}

	public void setIshot(String ishot) {
		this.ishot = ishot;
	}

	public TLine gettLine() {
		return tLine;
	}

	public void settLine(TLine tLine) {
		this.tLine = tLine;
	}
}